// 公共请求方法封装

// 设置基地址
const BASE_URL = 'https://api-ugo-dev.yougou.net'

// 将集合options解构成各个参数
function request ({ url, data, header, method, isAuth, showLoading = true }) {
  return new Promise(resolve => {
    // 请求前设置 开启loading
    // 设置herder默认值
    let header = {}
    // 如果需要登录态,就传token
    if (isAuth) {
      // 取token
      let token = uni.getStorageSync('token')
      if (!token) {
        // 登录态,没有token,就跳转登录页面
        uni.navigateTo({
          url: '/pages/login/login'
        })
        return
      }
      header.Authorization = token
    }
    if (showLoading) {
      uni.showLoading({
        title: '加载中...',
        mask: true
      })
    }

    uni.request({
      // 动态传递对象请求参数
      url: BASE_URL + url,
      data: data,
      success: res => {
        let { meta, message } = res.data
        if (meta.status === 200) {
          // 成功的数据
          resolve(message)
        }
      },
      complete: () => {
        if (showLoading) {
          // 关闭Loading
          uni.hideLoading()
        }
      }
    })
  })
}
export default request
